#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
#include <QResizeEvent>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    //先把QLbael设置成和窗口一样大，并且把这个QLabel左上角设置到窗口左上角这里
    //让整个QLabel铺满整个窗口
    QRect windowRect = this->geometry();
    ui->label->setGeometry(0,0,windowRect.width(),windowRect.height());
    //创建QPixmap对象加载目标图片
    QPixmap pixmap(":/target.png");
    //把目标图片设置到label中
    ui->label->setPixmap(pixmap);
    //通过设置scaledContents属性让其自动拉伸填充
    ui->label->setScaledContents(true);
}

Widget::~Widget()
{
    delete ui;
}

//此处的形参event是非常有用的,这里包含了触发这个resize事件后的这一刻,窗口的尺寸的数值
void Widget::resizeEvent(QResizeEvent *event)
{
    qDebug() << event->size();
    //每次触发resizeEvent就实时修改label的尺寸,而图片的尺寸由于有scaledContents属性的设置会自动拉伸填充
    ui->label->setGeometry(0,0,event->size().width(),event->size().height());
}

